#ifndef FACEFEATURETOOL_H
#define FACEFEATURETOOL_H

#include <QString>
#include <QMutex>
#include "FaceEngine.h" //seetaface的头文件
#include "opencv.hpp"   //opencv的头文件
using namespace seeta;  // seetaface里面的命名空间
using namespace cv;     // opencv里面的命名空间

class FaceFeatureTool
{
public:
    // 禁止拷贝构造和赋值运算
    FaceFeatureTool(const FaceFeatureTool &) = delete;
    FaceFeatureTool &operator=(const FaceFeatureTool &) = delete;

    static FaceFeatureTool *getInstance();// 获取单例实例
    void releaseInstance(); // 释放资源

    bool init(); // 初始化人脸引擎
    bool faceComparison(QByteArray employeePhoneData,QByteArray attendPhotoData);

private:
    // 私有构造函数（单例模式）
    FaceFeatureTool();
    ~FaceFeatureTool();

    // 单例实例
    static FaceFeatureTool *m_instance;
    FaceEngine *m_faceEngine; // 创建人脸识别引擎对象
    bool m_initialized;       // 初始化状态标记
};

#endif // FACEFEATURETOOL_H
